package com.hxkj.domain.po;

import java.io.Serializable;
import java.util.List;
import java.util.Objects;

/**
 * @ClassName analyzeIncludeTree
 * @Description TODO
 * @Author Mr.zheng
 * @Date 2018/7/11 19:29
 * @Version 1.0
 */
public class AnalyzeIncludeTree implements Serializable{


    private static final long serialVersionUID = 9054383642799000296L;
    // 分类ID
    private Long columnId;
    // 频道ID
    private Long channelId;
    //文章ID
    private Long articleId;
    // 名字
    private String includeName;
    // 属性
    private int type;
    //静态资源路径
    private String manuscriptPath;
    //站点ID
    private Long siteId;

    private AnalyzeIncludeTree children;

    private Long templetId;


    public Long getTempletId() {
        return templetId;
    }

    public void setTempletId(Long templetId) {
        this.templetId = templetId;
    }

    public Long getColumnId() {
        return columnId;
    }

    public void setColumnId(Long columnId) {
        this.columnId = columnId;
    }

    public String getManuscriptPath() {
        return manuscriptPath;
    }

    public void setManuscriptPath(String manuscriptPath) {
        this.manuscriptPath = manuscriptPath;
    }

    public int getType() {
        return type;
    }

    public void setType(int type) {
        this.type = type;
    }

    public Long getChannelId() {
        return channelId;
    }

    public void setChannelId(Long channelId) {
        this.channelId = channelId;
    }

    public Long getArticleId() {
        return articleId;
    }

    public void setArticleId(Long articleId) {
        this.articleId = articleId;
    }

    public String getIncludeName() {
        return includeName;
    }

    public void setIncludeName(String includeName) {
        this.includeName = includeName;
    }

    public AnalyzeIncludeTree getChildren() {
        return children;
    }

    public void setChildren(AnalyzeIncludeTree children) {
        this.children = children;
    }

    public Long getSiteId() {
        return siteId;
    }

    public void setSiteId(Long siteId) {
        this.siteId = siteId;
    }

    @Override
    public String toString() {
        return "AnalyzeIncludeTree{" +
                "columnId=" + columnId +
                ", channelId=" + channelId +
                ", articleId=" + articleId +
                ", includeName='" + includeName + '\'' +
                ", type=" + type +
                ", manuscriptPath='" + manuscriptPath + '\'' +
                ", siteId=" + siteId +
                ", children=" + children +
                '}';
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (!(o instanceof AnalyzeIncludeTree)) return false;
        AnalyzeIncludeTree that = (AnalyzeIncludeTree) o;
        return getType() == that.getType() &&
                Objects.equals(getColumnId(), that.getColumnId()) &&
                Objects.equals(getChannelId(), that.getChannelId()) &&
                Objects.equals(getArticleId(), that.getArticleId()) &&
                Objects.equals(getIncludeName(), that.getIncludeName()) &&
                Objects.equals(getManuscriptPath(), that.getManuscriptPath()) &&
                Objects.equals(getSiteId(), that.getSiteId()) &&
                Objects.equals(getChildren(), that.getChildren());
    }

    @Override
    public int hashCode() {

        return Objects.hash(getColumnId(), getChannelId(), getArticleId(), getIncludeName(), getType(), getManuscriptPath(), getSiteId(), getChildren());
    }
}
